The world wide web ("the web") is a very large body of information maintained on thousands of computer systems connected by the Internet. The web is organized into millions of documents called web pages. A group of related web pages produced and maintained by the same person or organization is known as a "web site." Each web page may be independently accessed by providing a reference to the web page, called a "URL," or "uniform resource locator," to a web client application, called a "browser," executing on the user's computer system, or the "client" computer system. The browser uses DNS (Domain Naming System) resources to identify from the URL the particular computer system on which the web page is stored, known as the "server" of the web page, and sends a request for the contents of the web page to that computer system. When the server returns the contents of the web page in response to the request, the browser displays them to the user. This process is known as "viewing," "visiting," or "presenting" the web page.
Web page contents can include data such as text, still images, and audio and video clips; programs executable on the client machine; and links to related web pages. Many web pages provide useful information. For example, FIG. 1 is a screen diagram showing a sample web page that might be useful to users interested in magic as a hobby. The screen diagram shows a browser window 100 displayed by a browser. The browser window contains a web page reference field 110, into which the user may type or otherwise transfer a URL for a web page that the user wishes to view. When the user does so, the browser retrieves the contents of the referenced web page and displays them in a web page contents window 120. The web page whose contents are being displayed in the web page contents window 120 is called the "current web page." The contents displayed in the web page contents window 120 include a number of hypertext links, such as links 121-123 and 126-129. Each hypertext link is associated with a URL that typically identifies a web page. The user may select any of these hypertext links to display the contents of a web page corresponding to the link. When a user selects a hypertext link, the browser retrieves the web page identified by the URL and displays that web page in the web page contents window. The browser also updates the web page reference field to contain the URL for the retrieved web page. The web page thus displayed is said to be "referenced" by the selected link.
Because of the sheer size of the web, users can often eventually find several pages that are interesting to them. The considerable task of identifying such pages from among millions of others, however, can engender frustration and disappointment. In order to help users more easily find web pages that are interesting to them, several web sites have provided world wide web search engines and indices. Search engines identify web pages containing words, called "search terms," specified by the user. For instance, a user interested in the magic trick in which a volunteer is sawed in half might specify the search terms "magic" and "saw," to identify web pages containing those words. Indices, on the other hand, organize references to web pages in a hierarchical organization of the web. For example, the user interested in the magic trick in which a volunteer is sawed in half might traverse an index's hierarchy from its root to the node for /entertainment/magic/tricks, where the user would find a list of references to web pages related to various magic tricks.
Search engines and indices have several drawbacks, however. These finding tools require a user to rely on the organizations that maintain them, and could disappear at some point in the future if they become unprofitable. Also, they may not include the newest web pages. Further, index hierarchies commonly exclude many web pages and the categories that describe them. An index provider might exclude pages about sawing a volunteer in half for moral reasons, or because they do not fit neatly into its existing hierarchy.
Once a user has done a great deal of exploration looking for interesting pages, it can be difficult to keep track of the interesting web pages. While some browsers maintain a list of every web page visited, it can be difficult to distinguish interesting pages from uninteresting pages in such a list. Some browsers allow users to indicate, while viewing a web page, that the web page is interesting to them. In response, these browsers store a reference to this page for future use as a bookmark. When later reviewing a list of bookmarks, however, it can be difficult to determine, for a particular bookmark, why the referenced web page was of interest to the user. Some browsers further permit a user to manually construct a folder hierarchy for organizing web page references, and to place references to interesting web pages in the appropriate folders. This requires a significant amount of effort on the user's part, however.